// pages/book-detail/book-detail.js
Page({
    data: {
        bookInfo: {}, // 当前绘本详情数据（封面、标题、预览图等）
        previewIndex: 0 ,// 内容预览的当前滑动索引（默认显示第一张）
        progressWidth: 0 // 滚轮进度条宽度
    },
  
    onLoad(options) {
      // 1.接收列表页传递的绘本id（从路由参数中获取）
      const bookId = options.id;
      if (!bookId) {
        // 若未获取到id，返回上一页
        wx.navigateBack({ delta: 1 });
        return;
      }
      // 2. 从列表页获取完整绘本列表（通过getCurrentPages拿到上一页数据，避免重复存储）
        const pages = getCurrentPages();
        const listPage = pages[pages.length - 2]; // 上一页是picturebook列表页
        const bookList = listPage.data.bookList;

        // 3. 根据id匹配当前绘本数据（注意id是数字，需转换类型匹配）
        const targetBook = bookList.find(book => book.id === Number(bookId));
        if (!targetBook) {
        // 若未找到对应绘本，返回上一页
        wx.navigateBack({ delta: 1 });
        return;
        }

        // 4. 存储当前绘本数据到页面data
        this.setData({
        bookInfo: targetBook
        });
    }, 

     // 点击封面播放键，跳转到阅读页
    gotoRead() {
        const bookId = this.data.bookInfo.id;
        wx.navigateTo({
        url: `/pages/book-read/book-read?id=${bookId}` // 传递绘本id到阅读页
        });
    },

    // 内容预览滑动时，更新当前索引（仅用于标识，无额外逻辑）
    // 内容预览滑动时，更新当前索引（仅用于标识，无额外逻辑）
    onPreviewScroll(e) {
        const { scrollLeft } = e.detail; // 滚动容器的横向滚动距离（px）
        const cardWidth = 252; // 预览卡片宽度（70%屏幕宽度 → 屏幕宽度默认360px，70%≈252px，适配rpx转px）
        const cardGap = 32; // 卡片间距（16rpx → 1rpx=2px → 32px）
        const totalCardWidth = cardWidth + cardGap; // 单张卡片+间距的总宽度（px）
    
        // 计算当前页码：滚动距离 ÷ 单张总宽度，向上取整（确保滚动到一半时切换页码）
        let calculatedPage = Math.ceil(scrollLeft / totalCardWidth) + 1;
        // 边界处理：页码不能小于1，也不能大于总页数
        const totalPages = this.data.bookInfo.pages.length || 0;
        calculatedPage = Math.max(1, Math.min(calculatedPage, totalPages));
    }

  })
  